package model

import (
	"gorm.io/gorm"
	"time"
)

type ChatGroupUser struct {
	Id          uint           `gorm:"column:id;type:bigint(20) UNSIGNED;primaryKey;not null;" json:"id"`
	GroupUserId uint           `gorm:"column:group_user_id;type:bigint(20) UNSIGNED;comment:聊天成员ID;not null;default:0;" json:"group_user_id"`    // 聊天成员ID
	Level       uint           `gorm:"column:level;type:tinyint(1) UNSIGNED;comment:1 创建人 2 管理员 3 成员;not null;default:3;" json:"level"`          // 1 创建人 2 管理员 3 成员
	GroupId     uint           `gorm:"column:group_id;type:bigint(20) UNSIGNED;comment:聊天室ID;not null;" json:"group_id"`                         // 聊天室ID
	CreatedAt   time.Time      `gorm:"column:created_at;type:datetime(3);comment:创建时间;not null;default:CURRENT_TIMESTAMP(3);" json:"created_at"` // 创建时间
	UpdateAt    time.Time      `gorm:"column:update_at;type:datetime(3);comment:修改时间;not null;default:CURRENT_TIMESTAMP(3);" json:"update_at"`   // 修改时间
	DeleteAt    gorm.DeletedAt `gorm:"column:delete_at;type:datetime(3);comment:删除时间;default:NULL;" json:"delete_at"`                            // 删除时间
}

func (u *ChatGroupUser) TableName() string {
	return "chat_group_user"
}
